1. Field
This application relates generally to generating three-dimensional (3D) imagery, and more specifically, to processes and systems for generating 3D imagery from a two-dimensional (2D) image.
2. Related Art
Stereoscopic images are 2D images that create the illusion of 3D depth. Each stereoscopic image provides a view of a scene from a slightly different perspective. 3D depth is perceived when different images are displayed to a viewer in a way such that each eye sees a different view of the scene.
One way to produce 3D imagery of a live scene is to use a 3D camera, stereo camera, or the like, having two or more lenses each with a separate image sensor that captures an image of the scene from a slightly different perspective. FIG. 1 depicts an exemplary 3D camera 100 with two lenses 102 and 104. Similar to an observer's eyes, the lenses 102, 104 point in the same direction but are offset from one another to provide two different perspectives of the photographed scene.
It is also possible to create 3D images of a computer-generated environment. Computer-generated environments are typically created using geometric models of objects, characters, or other scene elements. The geometry data may include character rigs, animation curves, animation graphs, or the like. The geometric models may be combined with other animation data, such as textures, colors, lighting, and the like, in a rendering process to produce animated images of the computer-generated environment, such as the one shown in FIG. 2. Similar to live scenes, images of the computer-generated environment may be rendered from slightly different perspectives and displayed to provide the illusion of 3D depth.
Traditionally, producing realistic 3D imagery requires that the actual scene be imaged from at least two different perspectives. Thus, live or computer-generated scenes that were not originally imaged from multiple perspectives could not be used to produce quality 3D imagery of the scene. Furthermore, rendering a high-resolution image of a computer-generated environment containing many objects can require large amounts of computational resources (e.g., computer memory and processor time). The amount of required computational resources becomes an even greater issue when 3D imagery is desired since producing 3D imagery involves rendering the environment multiple times.
Thus, there is an opportunity to improve techniques for generating 3D imagery of real and computer-generated scenes.